home *** CD-ROM | disk | FTP | other *** search
/ Clickx 115 / Clickx 115.iso / software / tools / windows / tails-i386-0.16.iso / live / filesystem.squashfs / usr / include / scribus-ng / tabtools.h < prev    next >
Encoding:
C/C++ Source or Header  |  2007-06-12  |  5.7 KB  |  226 lines

  1. /*
  2. For general Scribus (>=1.3.2) copyright and licensing information please refer
  3. to the COPYING file provided with the program. Following this notice may exist
  4. a copyright and/or license notice that predates the release of Scribus 1.3.2
  5. for which a new license (GPL+exception) is in place.
  6. */
  7. #ifndef TABTOOLS_H
  8. #define TABTOOLS_H
  9.  
  10. #include <QWidget>
  11.  
  12. #include "scribusapi.h"
  13.  
  14. class QHBoxLayout;
  15. class QVBoxLayout;
  16. class QGridLayout;
  17. class QGroupBox;
  18. class QStackedWidget;
  19. class QLabel;
  20. class QSpinBox;
  21. class QToolButton;
  22. class QComboBox;
  23. class QCheckBox;
  24. class QRadioButton;
  25. class LinkButton;
  26. class FontCombo;
  27. class PolygonWidget;
  28. class ArrowChooser;
  29. class ScrSpinBox;
  30. class LineCombo;
  31. class ScribusDoc;
  32. class ColorCombo;
  33.  
  34. /*! \brief Tools panel for preferences dialog.
  35. This class is inherited from UI base class.
  36. \author Petr Vanek <petr@scribus.info>
  37. */
  38. class SCRIBUS_API TabTools : public QWidget
  39. {
  40.     Q_OBJECT
  41.  
  42. public:
  43.     TabTools( QWidget* parent, struct toolPrefs *prefsData, int unitIndex, ScribusDoc* doc);
  44.     ~TabTools() {};
  45.  
  46.     void restoreDefaults(struct toolPrefs *prefsData, int unitIndex);
  47.  
  48.     /*! \brief Enable sample rendering.
  49.     It's called when user selects this panel in preferences. First painting is very slow
  50.     so it's called on user demand - not in the prefs GUI initialization.
  51.     \param state allow drawing the sample when TRUE
  52.     \author Petr Vanek <petr@scribus.info> */
  53.     void enableFontPreview(bool state);
  54.  
  55.     void unitChange(int docUnitIndex);
  56.  
  57.     QGroupBox* buttonGroupTools;
  58.     QToolButton* toolShape;
  59.     QToolButton* toolPoly;
  60.     QToolButton* toolImage;
  61.     QToolButton* toolText;
  62.     QToolButton* toolLine;
  63.     QToolButton* toolZoom;
  64.     QToolButton* toolMisc;
  65.     QStackedWidget* subStackTools;
  66.     QWidget* subTabText;
  67.     QLabel* textHeadLine;
  68.     QLabel* textLabel3b;
  69.     QLabel* textLabel3b2;
  70.     QLabel* textLabel3b2t;
  71.     QLabel* textLabel3b2t2;
  72.     QLabel* textLabel3bT;
  73.     QLabel* textLabel3bTL;
  74.     QLabel* textLabel1b;
  75.     QLabel* textLabel2b;
  76.     QLabel* textLabel4b;
  77.     QSpinBox* columnsText;
  78.     QLabel* previewText;
  79.     FontCombo* fontComboText;
  80.     QComboBox* sizeComboText;
  81.     ColorCombo* colorComboText;
  82.     ColorCombo* colorComboStrokeText;
  83.     ColorCombo* colorComboTextBackground;
  84.     ColorCombo* colorComboTextLine;
  85.     QSpinBox* shadingText;
  86.     QSpinBox* shadingTextStroke;
  87.     QSpinBox* shadingTextBack;
  88.     QSpinBox* shadingTextLine;
  89.     QLabel* textLabelTS;
  90.     QLabel* textLabelTSS;
  91.     QLabel* textLabelTSB;
  92.     QLabel* textLabelTSL;
  93.     QComboBox* tabFillCombo;
  94.     QLabel* textLabel5b;
  95.     ScrSpinBox* gapText;
  96.     ScrSpinBox* gapTab;
  97.     QWidget* subTabShape;
  98.     QLabel* shapeHeadLine;
  99.     QLabel* textLabel9b;
  100.     QLabel* textLabel10b;
  101.     ScrSpinBox* lineWidthShape;
  102.     QLabel* textLabel12b;
  103.     QLabel* textLabel11b;
  104.     LineCombo* comboStyleShape;
  105.     QSpinBox* shadingFillShape;
  106.     ColorCombo* comboFillShape;
  107.     QSpinBox* shadingLineShape;
  108.     QLabel* textLabel7b;
  109.     ColorCombo* colorComboLineShape;
  110.     QLabel* textLabel8b;
  111.     QWidget* subTabLine;
  112.     QLabel* lineHeadLine;
  113.     ScrSpinBox* lineWidthLine;
  114.     QSpinBox* shadingLine;
  115.     ColorCombo* colorComboLine;
  116.     QLabel* textLabel13b;
  117.     QLabel* textLabel14b;
  118.     QLabel* textLabel15b;
  119.     QLabel* textLabel16b;
  120.     LineCombo* comboStyleLine;
  121.     QWidget* subTabImage;
  122.     QLabel* imageHeadLine;
  123.     ColorCombo* comboFillImage;
  124.     QLabel* textLabel19b;
  125.     QSpinBox* shadingFillImage;
  126.     QLabel* textLabel20b;
  127.     QGroupBox* buttonGroup3;
  128.     QLabel* textLabel17b;
  129.     QLabel* textLabel18b;
  130.     QSpinBox* scalingHorizontal;
  131.     QSpinBox* scalingVertical;
  132.     LinkButton* chainButton;
  133.     QGroupBox* buttonGroup5;
  134.     QCheckBox* checkRatioImage;
  135.     QCheckBox* embeddedPath;
  136.     QGroupBox* buttonGroupRes;
  137.     QRadioButton* checkFullRes;
  138.     QRadioButton* checkNormalRes;
  139.     QRadioButton* checkHalfRes;
  140.     QWidget* subTabPolygon;
  141.     QLabel* polygonHeadLine;
  142.     PolygonWidget* polyWidget;
  143.     QWidget* subTabZoom;
  144.     QLabel* zoomHeadLine;
  145.     QLabel* textLabel21b;
  146.     QSpinBox* minimumZoom;
  147.     QLabel* textLabel22b;
  148.     QLabel* textLabel23b;
  149.     QSpinBox* maximumZoom;
  150.     QSpinBox* zoomStep;
  151.     ArrowChooser* startArrow;
  152.     ArrowChooser* endArrow;
  153.     QLabel* startArrowText;
  154.     QLabel* endArrowText;
  155.     QLabel* arrowText;
  156.     QWidget* subTabGeneral;
  157.     QLabel* generalHeadLine;
  158.     QGroupBox* genDispBox;
  159.     QLabel* genText1;
  160.     QLabel* genText2;
  161.     ScrSpinBox* genDispX;
  162.     ScrSpinBox* genDispY;
  163.     QGroupBox* genRotBox;
  164.     QLabel* genText3;
  165.     QLabel* genText4;
  166.     ScrSpinBox* genRot;
  167.  
  168. protected slots:
  169.     /*!
  170.     \author Franz Schmid
  171.     \brief TabTools (Tools, Image Frame), Sets Y Scale value from X Scale value when chain is toggled
  172.     */
  173.     virtual void toggleChain();
  174.     /*!
  175.     \author Franz Schmid
  176.     \brief TabTools (Tools, Image Frame), Sets Y Scale value from X Scale value when X Scale value is changed
  177.     */
  178.     virtual void hChange();
  179.     /*!
  180.     \author Franz Schmid
  181.     \brief TabTools (Tools, Image Frame). Sets X Scale value from Y Scale value when Y Scale value is changed
  182.     */
  183.     virtual void vChange();
  184.     virtual void changeImageScalingFree(bool);
  185.     virtual void changeImageScalingRatio(bool);
  186.     /*!
  187.     \author Franz Schmid
  188.     \brief TabTools (Tools, Text frame), Sets the sample text in selected font in text frame preferences
  189.     */
  190.     virtual void setSample();
  191.     /*!
  192.     \author Franz Schmid
  193.     \brief TabTools (Tools), Raises widget for selected Tool properties
  194.     */
  195.     virtual void setTool();
  196.     virtual void setFillChar(int act);
  197.     virtual void setCustomFillChar(const QString &txt);
  198.  
  199. protected:
  200.     QHBoxLayout* tabToolsLayout;
  201.     QVBoxLayout* buttonGroupToolsLayout;
  202.     QGridLayout* subTabTextLayout;
  203.     QGridLayout* subTabShapeLayout;
  204.     QGridLayout* subTabLineLayout;
  205.     QGridLayout* subTabImageLayout;
  206.     QGridLayout* buttonGroup3Layout;
  207.     QHBoxLayout* buttonGroup5Layout;
  208.     QVBoxLayout* buttonGroupResLayout;
  209.     QGridLayout* subTabPolygonLayout;
  210.     QGridLayout* subTabZoomLayout;
  211.     QGridLayout* subTabGeneralLayout;
  212.     QGridLayout* subTabGeneralLayout2;
  213.     QGridLayout* subTabGeneralLayout3;
  214.     ScribusDoc* docu;
  215.     double unitRatio;
  216.     QString unit;
  217.     int precision;
  218.  
  219.     /*! \brief True when is font sample allowed.
  220.     See enableFontPreview() */
  221.     bool fontPreview;
  222.  
  223.     void enableSignals(bool);
  224. };
  225. #endif
  226.